package com.yungu.swift.system.finance.service;

import com.yungu.swift.base.ResponseData;
import com.yungu.swift.base.service.BaseService;
import com.yungu.swift.system.finance.model.dto.FinancePrepayDto;

public interface FinancePrepayService extends BaseService<FinancePrepayDto> {

    /**
     * 同一个订单修改过支付参数后，重新发起新的支付单，需要关闭原待支付的支付单
     *
     * @param orderUuid 订单uuid
     * @return ResponseData
     * @author xiuyin.cui
     * @date 2018/12/1
     */
    ResponseData<Boolean> disablePaying(String orderUuid);

    /**
     * 查询可用的预支付信息做再支付使用
     * <p>
     *
     * @param orderUuid  订单uuid
     * @param couponUuid 乘客优惠券uuid
     * @param money      支付金额
     * @param type       支付类型
     * @return FinancePrepayDto
     * @author Zerrion
     * @date 2019/12/1
     * @author xiuyin.cui
     * @date 2018/12/1
     */
    ResponseData<FinancePrepayDto> findAvailablePrepay(String orderUuid, String couponUuid, Double money, Integer type);
}